package com.pubinfo.passbook.api.controller.rule;

import com.pubinfo.passbook.common.entity.TRuleReimbursable;
import com.pubinfo.passbook.common.model.dto.rule.RuleReimbursableParam;
import com.pubinfo.passbook.common.model.vo.base.JsonResult;
import com.pubinfo.passbook.common.model.vo.base.MyPage;
import com.pubinfo.passbook.common.service.master.TRuleReimbursableService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiModelProperty;
import org.springframework.web.bind.annotation.*;

import javax.annotation.Resource;

@RestController
@RequestMapping("reimbursable/manager")
@Api(tags = "可报销管理")
public class TReimbursableController {
  
  @Resource
  private TRuleReimbursableService reimbursableService;
  
  @PostMapping("select")
  @ApiModelProperty("查询可报销规则")
  public JsonResult<MyPage<TRuleReimbursable>> selectReimbursable(@RequestBody RuleReimbursableParam param) {
    return JsonResult.success(new MyPage(reimbursableService.selectReimbursable(param)));
  }
  
  @DeleteMapping("remove")
  @ApiModelProperty("删除可报销规则")
  public JsonResult<String> removeReimbursable(String reimbursableId) {
    return reimbursableService.deleteReimbursable(reimbursableId);
  }
  
  @PostMapping("save")
  @ApiModelProperty("新增可报销规则")
  public JsonResult<String> saveReimbursable(@RequestBody TRuleReimbursable reimbursable) {
    return reimbursableService.saveReimbursable(reimbursable);
  }
  
  @PostMapping("update")
  @ApiModelProperty("修改可报销规则")
  public JsonResult<String> updateReimbursable(@RequestBody TRuleReimbursable reimbursable) {
    return reimbursableService.updateReimbursable(reimbursable);
  }
}
